Sim020-Beschreibung


Achtung : Die Ihnen vorliegende Version ist eine Vorab-Version. Der Text beschreibt, wie es einmal werden soll. Versionen vor 1.0.0 sind noch fehlerhaft !

1. Ein kleine EinfŸhrung 

Die Macintoshs der Reihen Plus,SE und Portable haben von Apple aus den Microprozessor 68000 eingebaut. Apple selbst bietet keine Erweiterungen auf grš§ere Prozessoren an. Die grš§eren Macintoshs haben entweder den 68020 (Mac II) oder den 68030 (alle anderen) eingebaut. Der Hauptvorteil der Prozessoren 68020 und 68030 besteht darin, da§ sie mit Coprozessoren, wie z.B. dem 68881, der fŸr Gleitkommaberechnung zustŠndig ist, zusammenarbeiten. Ein weiterer gro§er Vorteil gegenŸber dem 68000 liegt in der Mšglichkeit, diese Prozessoren mit mehr als 16 MHz zu takten. Die Prozessoren 68020 und 68030 wurden als Weiterentwicklung des 68000 mit einigen zusŠtzlichen Befehlen ausgestattet. Viele Programmiersprachen, z.B. die von Apple, von THINK und von TML, unterstŸtzen diese neue Befehle um die Programme schneller und kŸrzer zu machen. Wenn man nun Programme entwickelt und diese fŸr den 68020 Ÿbersetzt, hat man zwar die oben erwŠhnten Vorteile, aber auch ein sehr gro§en Nachteil :  Da der 68000 der kleinen Macs die neuen Befehle der Prozessoren 68020/30 nicht versteht, erscheint, sobald ein solcher Befehl auftritt, eine Bombe mit dem ID=3. Diese teilt dem Benutzer mit, da§ eine ÒIllegal InstructionÓ aufgetreten ist, also ein ungŸltiger Befehl.
Genau hier hakt sich Sim020 ein. Es fŠngt die neuen 68020/30-Befehle ab und emuliert sie. Diese Emulation ist vollstŠndig, da§ hei§t alle Informationen im Prozessor (die Register, das Statusregister u.s.w. ) sowie der Arbeitspseicher werden so verŠndert, wie sie auch auf einem 68020/30-Prozessor verŠndert wŸrden. Es entstehen im normalen Betrieb also keine Bomben, Sim020 ist fŸr den Benutzer vollkommen transparent.


2. FŸr wen ist Sim020 gedacht ? 

GrundsŠtzlich ist Sim020 natŸrlich nur fŸr Rechner mit dem Prozessor 68000 gedacht, bei Macs mit den Prozessoren 68020/30 erscheint Sim020 weder im Kontrollfeld noch beim Systemstart. Die Personen, fŸr die Sim020 sinnvoll ist, kann man in zwei Gruppen einteilen.


2.1 FŸr den normalen Anwender

In diese Kategorie fallen wohl die meisten. Der normale Anwender mšchte mit den vorhandenen Programmen arbeiten. Sim020 erweitert seine Palette. Er kann mit Sim020 Anwenderprogramme benutzen, die sonst den Besitzern von grš§eren Macs vorbehalten sind. Hier eine kleiner Auswahl von populŠren Programm :

	a)	SoftPC 1.3		Eine IBM XT-Emulation
	b)	OmniPage 2.0		Ein sehr starkes Zeichenerkennungsprogramm
2.2 FŸr den Entwickler von Software

Der Entwickler kann jetzt auch auf kleineren Macs Programme fŸr den 68020/30 entwickeln und sie testen. Er brauch, wenn der Anwender Sim020 besitzt nur noch eine Version, seines Programmes zu erstellen, nŠmlich die fŸr 68020/30 Prozessoren, und nicht wie frŸher zwei verschiedene.

Abschlie§end ist zu sagen, da§ also Sim020 fŸr jeden Anwender ein Mu§ ist. Wie oben erwŠhnt merkt der Benutzer nichts von seinem Vorhandensein.ÊSim020 belegt nur etwa 3 kByte im System-Heap und ist auch mit Entwicklerwerkzeugen, wie z.B. MacsBug voll vertrŠglich. Weiterhin unbekannte Befehle werden wie gewohnt sicher abgefangen, entweder von dem System (Bombe) oder von dem installierten Debugger (z.B. MacsBug).


3. Im Kontrollfeld

Ékann man den Sim020 mit  vier CheckBoxen einstellen. Die oberen beiden erklŠren sich selbst. Wenn die CheckBox Ò68020 im System eintragenÓ angekreuzt ist, denkt der Mac er besŠ§e habe ein 68020 eingebaut. Vor dem Start sollte jedes Anwenderprogramm ŸberprŸfen, ob der Mac den gestellten Anforderungen entspricht, ob er z.B. Farbe oder halt einen 68020 hat. Wenn diese Checkbox aus ist, denkt der Mac, er hŠtte einen 68000, er emuliert aber trotzdem die Befehle des 68020. Diese CheckBox mu§ nicht an sein, Soft PC und OmniPage prŸfen z.B. nicht vorher, ob ein 68020 da ist, sie bomben einfach. Die CheckBox ÒEigene FehlerbehandlungÓ soll spŠter einmal anstelle einer Bombe eine DialogBox zeigen, die die RŸckkehr in den Finder ermšglicht. Dies ist nocht nicht implementiert !


4. Wo liegen die EinschrŠnkungen ?

Wie oben erwŠhnt, emuliert Sim020 die neuen Befehle des 68020/30 komplett. Alle Befehle der Coprozessoren, wie die der Arithmetikprozessoren (FPU) 68881/82 oder der Speicherverwaltungseinheit (PMMU) 68851. Au§erdem sollte man nicht vergessen, da§ die Befehle ÒnurÓ emuliert werden. Zwar emuliert Sim020 die Befehle in Hinsich auf ihre Auswirkungen, aber nicht in ihrer Geschwindigkeit. Da aber erfahrungsgemŠ§ in Programmen nur sehr wenige 68020/30-Befehle vorkommen, merkt der Benutzer im Normalfall nichts von der Emulation. Mir ist bis heute kein Programm bekannt, da§ erheblich langsamer lŠuft, als auf dem entsprechendem Macs mit 68020 und gleicher Taktfrequenz.



Kontaktadresse:	Boris Klug
			Eichendorffstr.20
			5414 Vallendar
			Tel.: 0261/63109